/**
 * 自定义hook主要的作用是为了复用逻辑，这个自定义hook的要求如下
 * 1、要导出这个函数
 * 2、hook是要以use作为开头的
 * 
 */
import {useState,useEffect} from 'react'
export default function useScroll(){
    const getPosition=()=>{
        return {
            y:document.documentElement.scrollTop||document.body.scrollTop,
            x:document.documentElement.scrollLeft||document.body.scrollLeft
        }
    }
    let [position,setPosition]=useState(getPosition())
    const handleScroll=()=>{
        setPosition(getPosition())
    }
    useEffect(()=>{
        //页面加载的时候为页面文档注册滚动事件
        document.addEventListener('scroll',handleScroll)
        return ()=>{
            //当组件销毁的时候解绑滚动事件
            document.removeEventListener('scroll',handleScroll)
        }
    },[])
    return [position.x,position.y]

}